{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [],
   "source": [
    "tf_data = pd.read_csv('output/tf_eval_df.csv')\n",
    "st_data = pd.read_csv('output/st_eval_df.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 352 entries, 0 to 351\n",
      "Data columns (total 9 columns):\n",
      " #   Column                           Non-Null Count  Dtype \n",
      "---  ------                           --------------  ----- \n",
      " 0   category                         352 non-null    object\n",
      " 1   intent_id                        352 non-null    int64 \n",
      " 2   task                             352 non-null    object\n",
      " 3   tf_matched_intent_id             352 non-null    int64 \n",
      " 4   tf_matched_intent_text           352 non-null    object\n",
      " 5   tf_is_intent_matched             352 non-null    bool  \n",
      " 6   tf_matched_intent_id_shuffled    352 non-null    int64 \n",
      " 7   tf_matched_intent_text_shuffled  352 non-null    object\n",
      " 8   tf_is_intent_matched_shuffled    352 non-null    bool  \n",
      "dtypes: bool(2), int64(3), object(4)\n",
      "memory usage: 20.1+ KB\n"
     ]
    }
   ],
   "source": [
    "tf_data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 352 entries, 0 to 351\n",
      "Data columns (total 9 columns):\n",
      " #   Column                           Non-Null Count  Dtype \n",
      "---  ------                           --------------  ----- \n",
      " 0   category                         352 non-null    object\n",
      " 1   intent_id                        352 non-null    int64 \n",
      " 2   task                             352 non-null    object\n",
      " 3   st_matched_intent_id             352 non-null    int64 \n",
      " 4   st_matched_intent_text           352 non-null    object\n",
      " 5   st_is_intent_matched             352 non-null    bool  \n",
      " 6   st_matched_intent_id_shuffled    352 non-null    int64 \n",
      " 7   st_matched_intent_text_shuffled  352 non-null    object\n",
      " 8   st_is_intent_matched_shuffled    352 non-null    bool  \n",
      "dtypes: bool(2), int64(3), object(4)\n",
      "memory usage: 20.1+ KB\n"
     ]
    }
   ],
   "source": [
    "st_data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True    352\n",
       "Name: tf_is_intent_matched, dtype: int64"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tf_data['tf_is_intent_matched'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True    352\n",
       "Name: st_is_intent_matched, dtype: int64"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st_data['st_is_intent_matched'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "tf_data['tf_is_intent_matched'].value_counts().plot.bar()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "st_data['st_is_intent_matched'].value_counts().plot.bar()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True     351\n",
       "False      1\n",
       "Name: tf_is_intent_matched_shuffled, dtype: int64"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tf_data['tf_is_intent_matched_shuffled'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>category</th>\n",
       "      <th>intent_id</th>\n",
       "      <th>task</th>\n",
       "      <th>tf_matched_intent_id</th>\n",
       "      <th>tf_matched_intent_text</th>\n",
       "      <th>tf_is_intent_matched</th>\n",
       "      <th>tf_matched_intent_id_shuffled</th>\n",
       "      <th>tf_matched_intent_text_shuffled</th>\n",
       "      <th>tf_is_intent_matched_shuffled</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>169</th>\n",
       "      <td>Airtable</td>\n",
       "      <td>169</td>\n",
       "      <td>Airtable - Get data</td>\n",
       "      <td>169</td>\n",
       "      <td>Airtable - Get data</td>\n",
       "      <td>True</td>\n",
       "      <td>50</td>\n",
       "      <td>Newsapi - Get data</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     category  intent_id                 task  tf_matched_intent_id  \\\n",
       "169  Airtable        169  Airtable - Get data                   169   \n",
       "\n",
       "    tf_matched_intent_text  tf_is_intent_matched  \\\n",
       "169    Airtable - Get data                  True   \n",
       "\n",
       "     tf_matched_intent_id_shuffled tf_matched_intent_text_shuffled  \\\n",
       "169                             50              Newsapi - Get data   \n",
       "\n",
       "     tf_is_intent_matched_shuffled  \n",
       "169                          False  "
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "tf_data[tf_data['tf_is_intent_matched_shuffled'] == False]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "tf_data['tf_is_intent_matched_shuffled'].value_counts().plot.bar()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "True     350\n",
       "False      2\n",
       "Name: st_is_intent_matched_shuffled, dtype: int64"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st_data['st_is_intent_matched_shuffled'].value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>category</th>\n",
       "      <th>intent_id</th>\n",
       "      <th>task</th>\n",
       "      <th>st_matched_intent_id</th>\n",
       "      <th>st_matched_intent_text</th>\n",
       "      <th>st_is_intent_matched</th>\n",
       "      <th>st_matched_intent_id_shuffled</th>\n",
       "      <th>st_matched_intent_text_shuffled</th>\n",
       "      <th>st_is_intent_matched_shuffled</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>34</th>\n",
       "      <td>Google Sheets</td>\n",
       "      <td>34</td>\n",
       "      <td>Google Sheets - Send data to MongoDB</td>\n",
       "      <td>34</td>\n",
       "      <td>Google Sheets - Send data to MongoDB</td>\n",
       "      <td>True</td>\n",
       "      <td>126</td>\n",
       "      <td>MongoDB - Send data to Google Sheets</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>126</th>\n",
       "      <td>MongoDB</td>\n",
       "      <td>126</td>\n",
       "      <td>MongoDB - Send data to Google Sheets</td>\n",
       "      <td>126</td>\n",
       "      <td>MongoDB - Send data to Google Sheets</td>\n",
       "      <td>True</td>\n",
       "      <td>34</td>\n",
       "      <td>Google Sheets - Send data to MongoDB</td>\n",
       "      <td>False</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          category  intent_id                                  task  \\\n",
       "34   Google Sheets         34  Google Sheets - Send data to MongoDB   \n",
       "126        MongoDB        126  MongoDB - Send data to Google Sheets   \n",
       "\n",
       "     st_matched_intent_id                st_matched_intent_text  \\\n",
       "34                     34  Google Sheets - Send data to MongoDB   \n",
       "126                   126  MongoDB - Send data to Google Sheets   \n",
       "\n",
       "     st_is_intent_matched  st_matched_intent_id_shuffled  \\\n",
       "34                   True                            126   \n",
       "126                  True                             34   \n",
       "\n",
       "          st_matched_intent_text_shuffled  st_is_intent_matched_shuffled  \n",
       "34   MongoDB - Send data to Google Sheets                          False  \n",
       "126  Google Sheets - Send data to MongoDB                          False  "
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "st_data[st_data['st_is_intent_matched_shuffled'] == False]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "st_data['st_is_intent_matched_shuffled'].value_counts().plot.bar()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>repetitions</th>\n",
       "      <th>tf_time_elapsed</th>\n",
       "      <th>st_time_elapsed</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>0.000003</td>\n",
       "      <td>0.000002</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>1.755822</td>\n",
       "      <td>8.272556</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2</td>\n",
       "      <td>3.255506</td>\n",
       "      <td>17.061706</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>3</td>\n",
       "      <td>4.404537</td>\n",
       "      <td>26.071062</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>4</td>\n",
       "      <td>6.189593</td>\n",
       "      <td>35.721578</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>5</td>\n",
       "      <td>7.772967</td>\n",
       "      <td>44.145934</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>6</td>\n",
       "      <td>9.517264</td>\n",
       "      <td>56.337967</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>7</td>\n",
       "      <td>10.562992</td>\n",
       "      <td>72.224635</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>8</td>\n",
       "      <td>12.480063</td>\n",
       "      <td>78.887859</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>9</td>\n",
       "      <td>13.984340</td>\n",
       "      <td>87.984332</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>10</td>\n",
       "      <td>15.344909</td>\n",
       "      <td>103.883669</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "    repetitions  tf_time_elapsed  st_time_elapsed\n",
       "0             0         0.000003         0.000002\n",
       "1             1         1.755822         8.272556\n",
       "2             2         3.255506        17.061706\n",
       "3             3         4.404537        26.071062\n",
       "4             4         6.189593        35.721578\n",
       "5             5         7.772967        44.145934\n",
       "6             6         9.517264        56.337967\n",
       "7             7        10.562992        72.224635\n",
       "8             8        12.480063        78.887859\n",
       "9             9        13.984340        87.984332\n",
       "10           10        15.344909       103.883669"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "speed_benchmark = pd.read_csv('output/speed_benchmark.csv')\n",
    "speed_benchmark"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEGCAYAAACKB4k+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAA3IklEQVR4nO3dd3hUZfbA8e9JQgokJBA6SF1AeoAASo2KiIJgx4q9rsrqomBHXBRddO26rIio7G9R7MoqKF0RpCkCuigoRCIQSoCQnvP7496MAQIMSSbTzud58szcOzP3PaG8Z+5933teUVWMMcYYgAh/B2CMMSZwWFIwxhjjYUnBGGOMhyUFY4wxHpYUjDHGeET5O4CKqFOnjjZv3tzfYRhjTFBZsWJFpqrWLeu1oE4KzZs3Z/ny5f4OwxhjgoqI/Hqk1+zykTHGGA9LCsYYYzwsKRhjjPEI6jGFshQUFJCenk5ubq6/QzFBKjY2liZNmlCtWjV/h2JMlQu5pJCenk5CQgLNmzdHRPwdjgkyqsrOnTtJT0+nRYsW/g7HmCoXcpePcnNzSU5OtoRgykVESE5OtjNNE7ZCLikAlhBMhdi/HxPOQjIpGGNMSPtmCvw8zyeHtqRQyXbu3ElKSgopKSk0aNCAxo0be7bz8/OrJIa3336bdu3accoppzB//nyGDh1aacf+5Zdf6Nix40H7xo0bx6RJk476uddee41bb7210uIwJmwtnQyf3Amr3vDJ4UNuoNnfkpOTWb16NeB0lvHx8YwePbpK2lZVVJUpU6bw4osvepKCMSZEfP0yfDoGThwK57zskybsTKEKrFixggEDBtC9e3fOOOMMMjIyAEhLS2PMmDH07NmTNm3asGjRIgDWrl1Lz549SUlJoXPnzmzYsAGAp556io4dO9KxY0eefvppwPnm3q5dO2655Ra6devGI488wuLFi7npppu46667Dopj165dnHPOOXTu3JmTTjqJ7777DoBOnTqxZ88eVJXk5GRef/11AK644go+//zz4/pd09LSPKVHMjMzKV2basuWLQwePJi2bdvy8MMPH98fojHh7uuX/kgIF0yFqGifNBPSZwoPf7SWdVv3Vuox2zeqyUNnd/D6/arKbbfdxgcffEDdunWZMWMG9913H6+++ioAhYWFLFu2jFmzZvHwww/z+eef8/LLLzNq1Cguu+wy8vPzKSoqYsWKFUydOpWlS5eiqvTq1YsBAwZQq1YtfvzxR6ZOncqLL74IwLx585g0aRKpqakHnSk89NBDdO3alffff5+5c+cycuRIVq9eTZ8+ffjyyy9p1qwZLVu2ZNGiRYwcOZKvv/6al1566bDf6eeffyYlJcWz/fvvv3t1NrRs2TK+//57qlevTo8ePRgyZAipqale/1kaE7aWvACf3QvtznYSQqTv7qHxWVIQkVeBocB2Ve3o7qsNzACaA78AF6nqbve1e4BrgSLgdlX9zFexVaW8vDy+//57Tj/9dACKiopo2LCh5/XzzjsPgO7du/PLL78AcPLJJzNhwgTS09M577zzaN26NYsXL+bcc8+lRo0ans8tWrSIYcOG0axZM0466aRjxrJ48WLeeecdAE499VR27txJVlYW/fr1Y+HChTRr1oybb76ZyZMn89tvv1G7dm3i4+MPO06rVq08l8jAuUzmjdNPP53k5GRP/IsXL7akYMyxfPU8zL4P2g2DC171aUIA354pvAY8D7xeat9Y4AtVnSgiY93tMSLSHrgY6AA0Aj4XkTaqWlSRAI7nG72vqCodOnRgyZIlZb4eExMDQGRkJIWFhQBceuml9OrVi08++YQzzjiDV155BVU9YhslicKbWA4lIvTv358XXniBzZs3M2HCBN577z1mzpxJv379vDpuaVFRURQXFwMcNtf/0KmeNvXTmGP48lmY8wC0PwfOf8XnCQF8OKagqguBXYfsHg5Mc59PA84ptf8/qpqnqpuAn4CevoqtKsXExLBjxw5PUigoKGDt2rVH/czGjRtp2bIlt99+O8OGDeO7776jf//+vP/++xw4cIDs7Gzee++94+60+/fvz/Tp0wGYP38+derUoWbNmpxwwglkZmayYcMGWrZsSd++fZk0aVK5kkLz5s1ZsWIFADNnzjzotTlz5rBr1y5ycnJ4//336dOnz3Ef35iw8eUzTkLocG6VJQSo+oHm+qqaAeA+1nP3Nwa2lHpfursv6EVERDBz5kzGjBlDly5dSElJ4auvvjrqZ2bMmEHHjh1JSUnhhx9+YOTIkXTr1o2rrrqKnj170qtXL6677jq6du16XLGMGzeO5cuX07lzZ8aOHcu0adM8r/Xq1Ys2bdoA0K9fP3777Tf69u173L/v6NGjeemll+jduzeZmZkHvda3b1+uuOIKUlJSOP/8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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(speed_benchmark['repetitions'], speed_benchmark['tf_time_elapsed'], label='Tensorflow Hub')\n",
    "plt.plot(speed_benchmark['repetitions'], speed_benchmark['st_time_elapsed'], label='Sentence Transformer')\n",
    "\n",
    "plt.xlabel('No. of repetitions')\n",
    "plt.ylabel('Time elapsed in seconds')\n",
    "plt.legend(loc=\"upper left\")\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "pycharm": {
     "name": "#%%\n"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": "<IPython.core.display.HTML object>",
      "text/html": "<span class=\"tex2jax_ignore\"><div class=\"entities\" style=\"line-height: 2.5; direction: ltr\">make scatter plot of \n<mark class=\"entity\" style=\"background: #ddd; padding: 0.45em 0.6em; margin: 0 0.25em; line-height: 1; border-radius: 0.35em;\">\n    time_elapsed\n    <span style=\"font-size: 0.8em; font-weight: bold; line-height: 1; border-radius: 0.35em; vertical-align: middle; margin-left: 0.5rem\">COLNAME</span>\n</mark>\n and \n<mark class=\"entity\" style=\"background: #ddd; padding: 0.45em 0.6em; margin: 0 0.25em; line-height: 1; border-radius: 0.35em;\">\n    height_from_ground_level\n    <span style=\"font-size: 0.8em; font-weight: bold; line-height: 1; border-radius: 0.35em; vertical-align: middle; margin-left: 0.5rem\">COLNAME</span>\n</mark>\n from \n<mark class=\"entity\" style=\"background: #ddd; padding: 0.45em 0.6em; margin: 0 0.25em; line-height: 1; border-radius: 0.35em;\">\n    df\n    <span style=\"font-size: 0.8em; font-weight: bold; line-height: 1; border-radius: 0.35em; vertical-align: middle; margin-left: 0.5rem\">VARNAME</span>\n</mark>\n</div></span>"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import spacy\n",
    "nlp = spacy.load(\"training/model-best\")\n",
    "doc = nlp('make scatter plot of time_elapsed and height_from_ground_level from df')\n",
    "spacy.displacy.render(doc, style=\"ent\", jupyter=True)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}